package org.example.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;


/**
 * 内容信息对象 utc_item_info
 *
 * @author coderfun
 * @date 2024-11-24
 */
public class UtcItemInfo extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 内容唯一标识，主键
     */
    private Long itemId;

    /**
     * 创作者id,是特殊的用户id
     */
    private Long creatorId;

    /**
     * 线上内容的版本号
     */
    private Long onlineVersion;

    /**
     * 预留字段，相关视频id
     */

    private Long onlineVideoId;

    /**
     * 线上问题的长文本uri，序列化为Json格式
     */
    private String onlineTextUri;

    /**
     * 最新变更的内容版本
     */
    private Long lastVersion;

    /**
     * 线上内容的可见范围:私密，好友可见，粉丝可见，所有人可见
     */
    private Long visibility;

    /**
     * 内容的状态:待审核，正常显示，被删除，被下架
     */
    private Long status;

    /**
     * 预留字段
     */
    private String extra;

    /**
     * 内容热度评分
     */
    private Long hotScore;

    public void setItemId(Long itemId) {
        this.itemId = itemId;
    }

    public Long getItemId() {
        return itemId;
    }

    public void setCreatorId(Long creatorId) {
        this.creatorId = creatorId;
    }

    public Long getCreatorId() {
        return creatorId;
    }

    public void setOnlineVersion(Long onlineVersion) {
        this.onlineVersion = onlineVersion;
    }

    public Long getOnlineVersion() {
        return onlineVersion;
    }

    public void setOnlineVideoId(Long onlineVideoId) {
        this.onlineVideoId = onlineVideoId;
    }

    public Long getOnlineVideoId() {
        return onlineVideoId;
    }

    public void setOnlineTextUri(String onlineTextUri) {
        this.onlineTextUri = onlineTextUri;
    }

    public String getOnlineTextUri() {
        return onlineTextUri;
    }

    public void setLastVersion(Long lastVersion) {
        this.lastVersion = lastVersion;
    }

    public Long getLastVersion() {
        return lastVersion;
    }

    public void setVisibility(Long visibility) {
        this.visibility = visibility;
    }

    public Long getVisibility() {
        return visibility;
    }

    public void setStatus(Long status) {
        this.status = status;
    }

    public Long getStatus() {
        return status;
    }

    public void setExtra(String extra) {
        this.extra = extra;
    }

    public String getExtra() {
        return extra;
    }

    public void setHotScore(Long hotScore) {
        this.hotScore = hotScore;
    }

    public Long getHotScore() {
        return hotScore;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("itemId", getItemId())
                .append("creatorId", getCreatorId())
                .append("onlineVersion", getOnlineVersion())
                .append("onlineVideoId", getOnlineVideoId())
                .append("onlineTextUri", getOnlineTextUri())
                .append("lastVersion", getLastVersion())
                .append("createTime", getCreateTime())
                .append("updateTime", getUpdateTime())
                .append("visibility", getVisibility())
                .append("status", getStatus())
                .append("extra", getExtra())
                .append("hotScore", getHotScore())
                .toString();
    }
}
